/**
 @Name：layuiAdmin 系统管理->类型管理
 @Author：star1029
 @Site：http://www.layui.com/admin/
 @License：LPPL
 */

layui.define(['table', 'form'], function (exports) {
    var $ = layui.$
        , admin = layui.admin
        , view = layui.view
        , table = layui.table
        , form = layui.form;

    // 类型管理
    table.render({
        elem: '#LAY-type-manage'
        , url: '/getAllTypesPageServlet' // 模拟接口
        , cols: [[
            {type: 'checkbox', fixed: 'left'}
            , {hide: 'typeId', width: 100, title: 'ID', sort: true}
            , {field: 'typeName', title: '类型名', minWidth: 200}
            , {field: 'typeCount', title: '工分', width: 100}
            , {field: 'typeFlag', title: '状态', width: 80}
            , {field: 'typeYears', title: '年份', width: 100}
            , {title: '操作', width: 150, align: 'center', fixed: 'right', toolbar: '#table-system-type'}
        ]]
        , page: true
        , limit: 10
        , height: 'full-320'
        , text: '对不起，加载出现异常！'
    });
//
    // 监听工具条
    table.on('tool(LAY-type-manage)', function (obj) {
        var data = obj.data;
        if (obj.event === 'del') {
            layer.confirm('真的要删除么？', function (index) {
                $.ajax({
                    type: 'POST'
                    , url: '/deleteTypeServlet'
                    , data: {"cid": data.typeId}
                    , success: function (data) {
                        if (data == "Ok") {
                            layer.alert('删除成功', {icon: 6});
                            obj.del();
                        } else {
                            layer.alert(data, {title: '删除失败'});
                        }
                    }
                });
                layui.table.reload('LAY-type-manage'); // 重载表格
            });
        } else if (obj.event === 'edit') {
            admin.popup({
                title: '编辑类型'
                , area: ['500px', '450px']
                , id: 'LAY-popup-user-add'
                , success: function (layero, index) {
                    view(this.id).render('type/update', data).done(function () {
                        form.render(null, 'layuiadmin-form-type');

                        // 监听提交
                        form.on('submit(LAY-modify)', function (data) {
                            var field = data.field; // 获取提交的字段
                            console.log(field);
                            $.ajax({
                                type: 'POST',
                                url: '/updateTypeServlet',
                                data: field,
                                success: function (data) {
                                    if (data == "Ok") {
                                        layer.alert("修改成功", {
                                            icon: 6
                                        });
                                    } else {
                                        layer.alert(data, {
                                            title: '修改失败'
                                        });
                                    }
                                }
                            });
                            layui.table.reload('LAY-type-manage'); // 重载表格
                            layer.close(index); // 执行关闭
                        });
                    });
                }
            });
        }
    });

    form.render(null, 'layadmin-userfront-formlist');

    // 监听搜索
    form.on('submit(LAY-type-front-search)', function (data) {
        var field = data.field;
        // 执行重载
        table.reload('LAY-type-manage', {
            page: {
                curr: 1
            },
            where: field,
            method: 'post'
        });
    });

    // 事件
    var active = {
        batchdel: function () {
            var checkStatus = table.checkStatus('LAY-type-manage')
                , checkData = checkStatus.data; // 得到选中的数据
            if (checkData.length === 0) {
                return layer.msg('请选择数据');
            }
            layer.prompt({
                formType: 1
                , title: '敏感操作，请验证口令'
            }, function (value, index) {
                layer.close(index);
                layer.confirm('确定删除吗？', function (index) {
                    table.reload('LAY-type-manage');
                    layer.msg('已删除');
                });
            });
        },
        add: function () {
            admin.popup({
                title: '添加类型'
                , area: ['500px', '450px']
                , id: 'LAY-popup-user-add'
                , success: function (layero, index) {
                    view(this.id).render('type/add').done(function () {
                        form.render(null, 'layuiadmin-form-type');
                        // 监听提交
                        form.on('submit(LAY-type-add)', function (data) {
                            var field = data.field; // 获取提交的字段
                            $.ajax({
                                type: 'POST',
                                url: '/addTypeServlet',
                                data: field,
                                success: function (data) {
                                    if (data == "Ok") {
                                        layer.alert("增加成功", {
                                            icon: 6
                                        });
                                    } else {
                                        layer.alert(data, {
                                            title: '添加失败'
                                        });
                                    }
                                }
                            });
                            layui.table.reload('LAY-type-manage'); // 重载表格
                            layer.close(index); // 执行关闭
                        });
                    });
                }
            });
        }
    };

    $('.layui-btn.layuiadmin-btn-useradmin').on('click', function () {
        var type = $(this).data('type');
        active[type] ? active[type].call(this) : '';
    });

    exports('type', {});
});